/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  dev
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      phaseProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

type    thermalPhaseChangeMultiphaseSystem;

phases (gas gas2 liquid);

phaseChange on;

gas
{
    type            purePhaseModel;
    diameterModel   constant;

    constantCoeffs
    {
        d               0.00045;
    }

    Sct             0.7;

    residualAlpha   1e-4;
}

gas2
{
    type            purePhaseModel;
    diameterModel   constant;
    constantCoeffs
    {
        d               0.00045;
    }

    Sct             0.7;

    residualAlpha   1e-4;
}

liquid
{
    type            purePhaseModel;
    diameterModel   constant;

    constantCoeffs
    {
        d               0.00045;
    }
    Sc              0.7;

    residualAlpha   1e-4;
}

blending
{
    default
    {
        type            none;
        continuousPhase liquid;
    }
}

surfaceTension
(
    (gas and liquid)
    {
        type            constant;
        sigma           0.07;
    }

    (gas2 and liquid)
    {
        type            constant;
        sigma           0.07;
    }

);

saturationModel
{
        type constant;//function1;

        Tsat 373;
        pSat 1e5;

        function csvFile;
        functionCoeffs
        {
            nHeaderLine         1;
            refColumn           0;
            componentColumns    (1);
            separator           ",";
            mergeSeparators     no;
            file                "Tsat_water_1_2bar.csv";
            outOfBounds         clamp;
            interpolationScheme linear;
        };
};

aspectRatio
(
    (gas in liquid)
    {
        type            constant;
        E0              1.0;
    }

    (gas2 in liquid)
    {
        type            constant;
        E0              1.0;
    }
);

drag
(
    (gas in liquid)
    {
        type            SchillerNaumann;
        residualRe      1e-3;
        swarmCorrection
        {
            type        none;
        }
    }

    (gas2 in liquid)
    {
        type            SchillerNaumann;
        residualRe      1e-3;
        swarmCorrection
        {
            type        none;
        }
    }
);

virtualMass
(
    (gas in liquid)
    {
        type            constantCoefficient;
        Cvm             0.5;
    }

    (gas2 in liquid)
    {
        type            constantCoefficient;
        Cvm             0.5;
    }
);

interfaceComposition
();

interfaceCompression
();

heatTransfer.gas
(
    (gas in liquid)
    {
        type spherical;
        residualAlpha 1e-3;
    }
);


heatTransfer.gas2
(
    (gas2 in liquid)
    {
        type spherical;
        residualAlpha 1e-3;
    }
);

heatTransfer.liquid
(
    (gas in liquid)
    {
        type RanzMarshall;
        residualAlpha 1e-3;
    }

    (gas2 in liquid)
    {
        type RanzMarshall;
        residualAlpha 1e-3;
    }
);

phaseTransfer
();

lift
();

wallLubrication
();

turbulentDispersion
(
    /*(gas in liquid)
    {
        type                Burns;
        sigma               0.7;
        Ctd                 1.0;
        residualAlpha       1e-3;
    }
    (gas2 in liquid)
    {
        type                Burns;
        sigma               0.7;
        Ctd                 1.0;
        residualAlpha       1e-3;
    }
*/
);

// Minimum allowable pressure
pMin            10000;


// ************************************************************************* //
